package com.ruoyi.city.controller;

import com.ruoyi.city.domain.City;
import com.ruoyi.city.service.ICityService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;

import java.util.List;

@Api(tags = "基础管理-城市信息")
@RestController
@RequestMapping("/city")
public class CityController {

    @Autowired
    private ICityService cityService;

    /**
     * 查询城市列表
     */
            @ApiOperation("查询城市列表")
    @GetMapping("/list")
    public List<City> list() {
        return cityService.selectCityList();
    }

    /**
     * 获取城市详细信息
     */
                @ApiOperation("城市管理 - 根据ID获取详细信息")
    @GetMapping("/info")
    public City getInfo(@RequestParam Long id) {
        return cityService.selectCityById(id);
    }

    /**
     * 获取城市详细信息，by cityCode
     */
                @ApiOperation("城市管理 - 根据代码获取信息")
    @GetMapping("/infoByCode")
    public City getInfoByCode(@RequestParam String cityCode) {
        return cityService.selectCityByCode(cityCode);
    }

    /**
     * 新增城市
     */
                @ApiOperation("城市管理 - 新增数据")
    @PostMapping
    public int add(@RequestBody City city) {
        return cityService.insertCity(city);
    }

    /**
     * 修改城市
     */
                @ApiOperation("城市管理 - 修改数据")
    @PutMapping
    public int edit(@RequestBody City city) {
        return cityService.updateCity(city);
    }

    /**
     * 删除城市
     */
                @ApiOperation("城市管理 - 删除数据")
    @DeleteMapping
    public int remove(@RequestParam String ids) {
        return cityService.deleteCityByIds(ids);
    }
}
